home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Languages / Oberon⁄F™ 1.1 / Obx / Mod / Calc < prev    next >
Unknown  |  1996-01-05  |  7.4 KB  |  [oODC/obnF]

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
97% TrID HomeLab/BraiLab Tape image default (weak)
1% TrID Photoshop Action default (weak)
0% TrID MacBinary 1 default (weak)
0% TrID Adobe PhotoShop Brush default (weak)
0% TrID Memo File Apollo Database Engine default (weak)


id metadata
keyvalue
macFileType[oODC]
macFileCreator[obnF]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000080| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000090| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000210| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000270| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000280| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000290| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 20 42 4f 4f 4c 45 41 4e | 0d 09 09 45 4e 44 3b 0d | BOOLEAN|...END;.|
|00000410| 0d 09 56 41 52 0d 09 09 | 66 6f 6e 74 3a 20 46 6f |..VAR...|font: Fo|
|00000420| 6e 74 73 2e 46 6f 6e 74 | 3b 0d 09 09 6c 61 62 65 |nts.Font|;...labe|
|00000430| 6c 73 3a 20 41 52 52 41 | 59 20 32 31 20 4f 46 20 |ls: ARRA|Y 21 OF |
|00000440| 43 48 41 52 3b 0d 0d 09 | 50 52 4f 43 45 44 55 52 |CHAR;...|PROCEDUR|
|00000450| 45 20 4c 6f 63 61 74 65 | 46 69 65 6c 64 20 28 76 |E Locate|Field (v|
|00000460| 3a 20 56 69 65 77 3b 20 | 66 3a 20 56 69 65 77 73 |: View; |f: Views|
|00000470| 2e 46 72 61 6d 65 3b 20 | 78 2c 20 79 3a 20 4c 4f |.Frame; |x, y: LO|
|00000480| 4e 47 49 4e 54 3b 20 56 | 41 52 20 69 2c 20 6a 3a |NGINT; V|AR i, j:|
|00000490| 20 49 4e 54 45 47 45 52 | 3b 0d 09 09 09 09 09 09 | INTEGER|;.......|
|000004a0| 09 09 09 09 09 56 41 52 | 20 76 61 6c 69 64 3a 20 |.....VAR| valid: |
|000004b0| 42 4f 4f 4c 45 41 4e 29 | 3b 0d 09 42 45 47 49 4e |BOOLEAN)|;..BEGIN|
|000004c0| 0d 09 09 78 20 3a 3d 20 | 78 20 44 49 56 20 6d 6d |...x := |x DIV mm|
|000004d0| 20 2d 20 33 3b 20 79 20 | 3a 3d 20 79 20 44 49 56 | - 3; y |:= y DIV|
|000004e0| 20 6d 6d 20 2d 20 31 32 | 3b 20 69 20 3a 3d 20 53 | mm - 12|; i := S|
|000004f0| 48 4f 52 54 28 78 20 44 | 49 56 20 39 29 3b 20 6a |HORT(x D|IV 9); j|
|00000500| 20 3a 3d 20 53 48 4f 52 | 54 28 79 20 44 49 56 20 | := SHOR|T(y DIV |
|00000510| 39 29 3b 0d 09 09 76 61 | 6c 69 64 20 3a 3d 20 28 |9);...va|lid := (|
|00000520| 69 20 3e 3d 20 30 29 20 | 26 20 28 69 20 3c 20 34 |i >= 0) |& (i < 4|
|00000530| 29 20 26 20 28 6a 20 3e | 3d 20 30 29 20 26 20 28 |) & (j >|= 0) & (|
|00000540| 6a 20 3c 20 35 29 20 26 | 20 28 78 20 4d 4f 44 20 |j < 5) &| (x MOD |
|00000550| 39 20 3c 20 37 29 20 26 | 20 28 79 20 4d 4f 44 20 |9 < 7) &| (y MOD |
|00000560| 39 20 3c 20 37 29 0d 09 | 45 4e 44 20 4c 6f 63 61 |9 < 7)..|END Loca|
|00000570| 74 65 46 69 65 6c 64 3b | 0d 0d 09 50 52 4f 43 45 |teField;|...PROCE|
|00000580| 44 55 52 45 20 53 65 6c | 65 63 74 46 69 65 6c 64 |DURE Sel|ectField|
|00000590| 20 28 76 3a 20 56 69 65 | 77 3b 20 66 3a 20 50 6f | (v: Vie|w; f: Po|
|000005a0| 72 74 73 2e 46 72 61 6d | 65 3b 20 69 2c 20 6a 3a |rts.Fram|e; i, j:|
|000005b0| 20 49 4e 54 45 47 45 52 | 29 3b 0d 09 09 43 4f 4e | INTEGER|);...CON|
|000005c0| 53 54 20 70 6f 69 6e 74 | 20 3d 20 50 6f 72 74 73 |ST point| = Ports|
|000005d0| 2e 70 6f 69 6e 74 3b 0d | 09 09 56 41 52 20 78 2c |.point;.|..VAR x,|
|000005e0| 20 79 3a 20 4c 4f 4e 47 | 49 4e 54 3b 0d 09 42 45 | y: LONG|INT;..BE|
|000005f0| 47 49 4e 0d 09 09 78 20 | 3a 3d 20 28 33 20 2b 20 |GIN...x |:= (3 + |
|00000600| 69 2a 39 29 2a 6d 6d 3b | 20 79 20 3a 3d 20 28 31 |i*9)*mm;| y := (1|
|00000610| 32 20 2b 20 6a 2a 39 29 | 2a 6d 6d 3b 0d 09 09 66 |2 + j*9)|*mm;...f|
|00000620| 2e 4d 61 72 6b 52 65 63 | 74 28 78 2b 70 6f 69 6e |.MarkRec|t(x+poin|
|00000630| 74 2c 20 79 2b 70 6f 69 | 6e 74 2c 20 78 2b 36 2a |t, y+poi|nt, x+6*|
|00000640| 6d 6d 2d 70 6f 69 6e 74 | 2c 20 79 2b 36 2a 6d 6d |mm-point|, y+6*mm|
|00000650| 2d 70 6f 69 6e 74 2c 20 | 50 6f 72 74 73 2e 66 69 |-point, |Ports.fi|
|00000660| 6c 6c 2c 20 50 6f 72 74 | 73 2e 68 69 6c 69 74 65 |ll, Port|s.hilite|
|00000670| 2c 20 54 52 55 45 29 0d | 09 45 4e 44 20 53 65 6c |, TRUE).|.END Sel|
|00000680| 65 63 74 46 69 65 6c 64 | 3b 0d 0d 09 50 52 4f 43 |ectField|;...PROC|
|00000690| 45 44 55 52 45 20 48 61 | 6e 64 6c 65 4b 65 79 20 |EDURE Ha|ndleKey |
|000006a0| 28 76 3a 20 56 69 65 77 | 3b 20 69 2c 20 6a 3a 20 |(v: View|; i, j: |
|000006b0| 49 4e 54 45 47 45 52 29 | 3b 0d 09 09 56 41 52 20 |INTEGER)|;...VAR |
|000006c0| 6b 2c 20 6e 3a 20 49 4e | 54 45 47 45 52 3b 20 73 |k, n: IN|TEGER; s|
|000006d0| 3a 20 53 74 61 63 6b 3b | 0d 09 42 45 47 49 4e 0d |: Stack;|..BEGIN.|
|000006e0| 09 09 6b 20 3a 3d 20 6a | 2a 34 20 2b 20 69 3b 20 |..k := j|*4 + i; |
|000006f0| 73 20 3a 3d 20 76 2e 73 | 74 61 63 6b 3b 0d 09 09 |s := v.s|tack;...|
|00000700| 49 46 20 6b 20 49 4e 20 | 7b 30 2c 20 31 2c 20 32 |IF k IN |{0, 1, 2|
|00000710| 2c 20 33 2c 20 37 2c 20 | 31 31 2c 20 31 35 7d 20 |, 3, 7, |11, 15} |
|00000720| 54 48 45 4e 0d 09 09 09 | 49 46 20 73 2e 6e 65 78 |THEN....|IF s.nex|
|00000730| 74 20 23 20 4e 49 4c 20 | 54 48 45 4e 0d 09 09 09 |t # NIL |THEN....|
|00000740| 09 49 46 20 6b 20 3d 20 | 30 20 54 48 45 4e 20 28 |.IF k = |0 THEN (|
|00000750| 2a 20 73 77 61 70 20 2a | 29 20 73 20 3a 3d 20 73 |* swap *|) s := s|
|00000760| 2e 6e 65 78 74 3b 20 76 | 2e 73 74 61 63 6b 2e 6e |.next; v|.stack.n|
|00000770| 65 78 74 20 3a 3d 20 73 | 2e 6e 65 78 74 3b 20 73 |ext := s|.next; s|
|00000780| 2e 6e 65 78 74 20 3a 3d | 20 76 2e 73 74 61 63 6b |.next :=| v.stack|
|00000790| 3b 20 76 2e 73 74 61 63 | 6b 20 3a 3d 20 73 0d 09 |; v.stac|k := s..|
|000007a0| 09 09 09 45 4c 53 49 46 | 20 6b 20 3d 20 31 20 54 |...ELSIF| k = 1 T|
|000007b0| 48 45 4e 20 76 2e 73 74 | 61 63 6b 20 3a 3d 20 73 |HEN v.st|ack := s|
|000007c0| 2e 6e 65 78 74 0d 09 09 | 09 09 45 4c 53 49 46 20 |.next...|..ELSIF |
|000007d0| 6b 20 49 4e 20 7b 32 2c | 20 33 7d 20 54 48 45 4e |k IN {2,| 3} THEN|
|000007e0| 0d 09 09 09 09 09 49 46 | 20 73 2e 76 61 6c 20 3d |......IF| s.val =|
|000007f0| 20 30 20 54 48 45 4e 20 | 44 69 61 6c 6f 67 2e 42 | 0 THEN |Dialog.B|
|00000800| 65 65 70 0d 09 09 09 09 | 09 45 4c 53 49 46 20 6b |eep.....|.ELSIF k|
|00000810| 20 3d 20 32 20 54 48 45 | 4e 20 73 2e 6e 65 78 74 | = 2 THE|N s.next|
|00000820| 2e 76 61 6c 20 3a 3d 20 | 73 2e 6e 65 78 74 2e 76 |.val := |s.next.v|
|00000830| 61 6c 20 4d 4f 44 20 73 | 2e 76 61 6c 3b 20 76 2e |al MOD s|.val; v.|
|00000840| 73 74 61 63 6b 20 3a 3d | 20 73 2e 6e 65 78 74 0d |stack :=| s.next.|
|00000850| 09 09 09 09 09 45 4c 53 | 45 20 73 2e 6e 65 78 74 |.....ELS|E s.next|
|00000860| 2e 76 61 6c 20 3a 3d 20 | 73 2e 6e 65 78 74 2e 76 |.val := |s.next.v|
|00000870| 61 6c 20 44 49 56 20 73 | 2e 76 61 6c 3b 20 76 2e |al DIV s|.val; v.|
|00000880| 73 74 61 63 6b 20 3a 3d | 20 73 2e 6e 65 78 74 0d |stack :=| s.next.|
|00000890| 09 09 09 09 09 45 4e 44 | 0d 09 09 09 09 45 4c 53 |.....END|.....ELS|
|000008a0| 49 46 20 6b 20 3d 20 37 | 20 54 48 45 4e 20 73 2e |IF k = 7| THEN s.|
|000008b0| 6e 65 78 74 2e 76 61 6c | 20 3a 3d 20 73 2e 6e 65 |next.val| := s.ne|
|000008c0| 78 74 2e 76 61 6c 20 2a | 20 73 2e 76 61 6c 3b 20 |xt.val *| s.val; |
|000008d0| 76 2e 73 74 61 63 6b 20 | 3a 3d 20 73 2e 6e 65 78 |v.stack |:= s.nex|
|000008e0| 74 0d 09 09 09 09 45 4c | 53 49 46 20 6b 20 3d 20 |t.....EL|SIF k = |
|000008f0| 31 31 20 54 48 45 4e 20 | 73 2e 6e 65 78 74 2e 76 |11 THEN |s.next.v|
|00000900| 61 6c 20 3a 3d 20 73 2e | 6e 65 78 74 2e 76 61 6c |al := s.|next.val|
|00000910| 20 2d 20 73 2e 76 61 6c | 3b 20 76 2e 73 74 61 63 | - s.val|; v.stac|
|00000920| 6b 20 3a 3d 20 73 2e 6e | 65 78 74 0d 09 09 09 09 |k := s.n|ext.....|
|00000930| 45 4c 53 49 46 20 6b 20 | 3d 20 31 35 20 54 48 45 |ELSIF k |= 15 THE|
|00000940| 4e 20 73 2e 6e 65 78 74 | 2e 76 61 6c 20 3a 3d 20 |N s.next|.val := |
|00000950| 73 2e 6e 65 78 74 2e 76 | 61 6c 20 2b 20 73 2e 76 |s.next.v|al + s.v|
|00000960| 61 6c 3b 20 76 2e 73 74 | 61 63 6b 20 3a 3d 20 73 |al; v.st|ack := s|
|00000970| 2e 6e 65 78 74 0d 09 09 | 09 09 45 4e 44 0d 09 09 |.next...|..END...|
|00000980| 09 45 4c 53 45 0d 09 09 | 09 09 49 46 20 6b 20 3d |.ELSE...|..IF k =|
|00000990| 20 30 20 54 48 45 4e 20 | 4e 45 57 28 73 29 3b 20 | 0 THEN |NEW(s); |
|000009a0| 73 2e 76 61 6c 20 3a 3d | 20 30 3b 20 73 2e 6e 65 |s.val :=| 0; s.ne|
|000009b0| 78 74 20 3a 3d 20 76 2e | 73 74 61 63 6b 3b 20 76 |xt := v.|stack; v|
|000009c0| 2e 73 74 61 63 6b 20 3a | 3d 20 73 0d 09 09 09 09 |.stack :|= s.....|
|000009d0| 45 4c 53 49 46 20 6b 20 | 3d 20 31 31 20 54 48 45 |ELSIF k |= 11 THE|
|000009e0| 4e 20 73 2e 76 61 6c 20 | 3a 3d 20 2d 73 2e 76 61 |N s.val |:= -s.va|
|000009f0| 6c 0d 09 09 09 09 45 4c | 53 49 46 20 6b 20 3d 20 |l.....EL|SIF k = |
|00000a00| 31 35 20 54 48 45 4e 20 | 28 2a 20 73 6b 69 70 20 |15 THEN |(* skip |
|00000a10| 2a 29 0d 09 09 09 09 45 | 4c 53 45 20 73 2e 76 61 |*).....E|LSE s.va|
|00000a20| 6c 20 3a 3d 20 30 0d 09 | 09 09 09 45 4e 44 0d 09 |l := 0..|...END..|
|00000a30| 09 09 45 4e 44 3b 0d 09 | 09 09 76 2e 65 64 69 74 |..END;..|..v.edit|
|00000a40| 4d 6f 64 65 20 3a 3d 20 | 46 41 4c 53 45 0d 09 09 |Mode := |FALSE...|
|00000a50| 45 4c 53 49 46 20 6b 20 | 3d 20 31 38 20 54 48 45 |ELSIF k |= 18 THE|
|00000a60| 4e 20 20 28 2a 20 b1 20 | 2a 29 20 0d 09 09 09 73 |N (* . |*) ....s|
|00000a70| 2e 76 61 6c 20 3a 3d 20 | 2d 20 73 2e 76 61 6c 0d |.val := |- s.val.|
|00000a80| 09 09 45 4c 53 49 46 20 | 6b 20 3d 20 31 36 54 48 |..ELSIF |k = 16TH|
|00000a90| 45 4e 20 28 2a 20 64 65 | 6c 65 74 65 20 2a 29 0d |EN (* de|lete *).|
|00000aa0| 09 09 09 49 46 20 76 2e | 65 64 69 74 4d 6f 64 65 |...IF v.|editMode|
|00000ab0| 20 54 48 45 4e 20 73 2e | 76 61 6c 20 3a 3d 20 73 | THEN s.|val := s|
|00000ac0| 2e 76 61 6c 20 44 49 56 | 20 31 30 0d 09 09 09 45 |.val DIV| 10....E|
|00000ad0| 4c 53 45 20 73 2e 76 61 | 6c 20 3a 3d 20 30 3b 20 |LSE s.va|l := 0; |
|00000ae0| 76 2e 65 64 69 74 4d 6f | 64 65 20 3a 3d 20 54 52 |v.editMo|de := TR|
|00000af0| 55 45 0d 09 09 09 45 4e | 44 0d 09 09 45 4c 53 49 |UE....EN|D...ELSI|
|00000b00| 46 20 6b 20 3d 20 31 39 | 20 54 48 45 4e 20 28 2a |F k = 19| THEN (*|
|00000b10| 20 65 6e 74 65 72 20 2a | 29 0d 09 09 09 4e 45 57 | enter *|)....NEW|
|00000b20| 28 73 29 3b 20 73 2e 76 | 61 6c 20 3a 3d 20 76 2e |(s); s.v|al := v.|
|00000b30| 73 74 61 63 6b 2e 76 61 | 6c 3b 20 73 2e 6e 65 78 |stack.va|l; s.nex|
|00000b40| 74 20 3a 3d 20 76 2e 73 | 74 61 63 6b 3b 20 76 2e |t := v.s|tack; v.|
|00000b50| 73 74 61 63 6b 20 3a 3d | 20 73 3b 0d 09 09 09 76 |stack :=| s;....v|
|00000b60| 2e 65 64 69 74 4d 6f 64 | 65 20 3a 3d 20 46 41 4c |.editMod|e := FAL|
|00000b70| 53 45 0d 09 09 45 4c 53 | 45 20 28 2a 20 65 64 69 |SE...ELS|E (* edi|
|00000b80| 74 20 6f 70 65 72 61 74 | 69 6f 6e 20 2a 29 0d 09 |t operat|ion *)..|
|00000b90| 09 09 49 46 20 6b 20 3d | 20 31 37 20 54 48 45 4e |..IF k =| 17 THEN|
|00000ba0| 20 28 2a 20 30 20 2a 29 | 20 6e 20 3a 3d 20 30 20 | (* 0 *)| n := 0 |
|00000bb0| 45 4c 53 45 20 6e 20 3a | 3d 20 28 33 2d 6a 29 2a |ELSE n :|= (3-j)*|
|00000bc0| 33 20 2b 20 31 20 2b 20 | 69 20 45 4e 44 3b 0d 09 |3 + 1 + |i END;..|
|00000bd0| 09 09 49 46 20 7e 76 2e | 65 64 69 74 4d 6f 64 65 |..IF ~v.|editMode|
|00000be0| 20 26 20 7e 76 2e 65 6e | 74 65 72 4d 6f 64 65 20 | & ~v.en|terMode |
|00000bf0| 54 48 45 4e 0d 09 09 09 | 09 4e 45 57 28 73 29 3b |THEN....|.NEW(s);|
|00000c00| 20 73 2e 76 61 6c 20 3a | 3d 20 6e 3b 20 73 2e 6e | s.val :|= n; s.n|
|00000c10| 65 78 74 20 3a 3d 20 76 | 2e 73 74 61 63 6b 3b 20 |ext := v|.stack; |
|00000c20| 76 2e 73 74 61 63 6b 20 | 3a 3d 20 73 3b 20 76 2e |v.stack |:= s; v.|
|00000c30| 65 64 69 74 4d 6f 64 65 | 20 3a 3d 20 54 52 55 45 |editMode| := TRUE|
|00000c40| 0d 09 09 09 45 4c 53 49 | 46 20 7e 76 2e 65 64 69 |....ELSI|F ~v.edi|
|00000c50| 74 4d 6f 64 65 20 54 48 | 45 4e 20 73 2e 76 61 6c |tMode TH|EN s.val|
|00000c60| 20 3a 3d 20 6e 3b 20 76 | 2e 65 64 69 74 4d 6f 64 | := n; v|.editMod|
|00000c70| 65 20 3a 3d 20 54 52 55 | 45 0d 09 09 09 45 4c 53 |e := TRU|E....ELS|
|00000c80| 49 46 20 73 2e 76 61 6c | 20 3e 3d 20 30 20 54 48 |IF s.val| >= 0 TH|
|00000c90| 45 4e 0d 09 09 09 09 49 | 46 20 73 2e 76 61 6c 20 |EN.....I|F s.val |
|00000ca0| 3e 20 28 4d 41 58 28 4c | 4f 4e 47 49 4e 54 29 20 |> (MAX(L|ONGINT) |
|00000cb0| 2d 20 6e 29 20 44 49 56 | 20 31 30 20 54 48 45 4e |- n) DIV| 10 THEN|
|00000cc0| 20 44 69 61 6c 6f 67 2e | 42 65 65 70 20 45 4c 53 | Dialog.|Beep ELS|
|00000cd0| 45 20 73 2e 76 61 6c 20 | 3a 3d 20 31 30 2a 73 2e |E s.val |:= 10*s.|
|00000ce0| 76 61 6c 20 2b 20 6e 20 | 45 4e 44 0d 09 09 09 45 |val + n |END....E|
|00000cf0| 4c 53 45 20 0d 09 09 09 | 09 49 46 20 73 2e 76 61 |LSE ....|.IF s.va|
|00000d00| 6c 20 3c 20 28 4d 49 4e | 28 4c 4f 4e 47 49 4e 54 |l < (MIN|(LONGINT|
|00000d10| 29 20 2b 20 6e 29 20 44 | 49 56 20 31 30 20 54 48 |) + n) D|IV 10 TH|
|00000d20| 45 4e 20 44 69 61 6c 6f | 67 2e 42 65 65 70 20 45 |EN Dialo|g.Beep E|
|00000d30| 4c 53 45 20 73 2e 76 61 | 6c 20 3a 3d 20 31 30 2a |LSE s.va|l := 10*|
|00000d40| 73 2e 76 61 6c 20 2d 20 | 6e 20 45 4e 44 0d 09 09 |s.val - |n END...|
|00000d50| 09 45 4e 44 0d 09 09 45 | 4e 44 3b 0d 09 09 76 2e |.END...E|ND;...v.|
|00000d60| 65 6e 74 65 72 4d 6f 64 | 65 20 3a 3d 20 6b 20 3d |enterMod|e := k =|
|00000d70| 20 31 39 3b 0d 09 09 56 | 69 65 77 73 2e 55 70 64 | 19;...V|iews.Upd|
|00000d80| 61 74 65 28 76 2c 20 56 | 69 65 77 73 2e 6b 65 65 |ate(v, V|iews.kee|
|00000d90| 70 46 72 61 6d 65 73 29 | 0d 09 45 4e 44 20 48 61 |pFrames)|..END Ha|
|00000da0| 6e 64 6c 65 4b 65 79 3b | 0d 0d 09 50 52 4f 43 45 |ndleKey;|...PROCE|
|00000db0| 44 55 52 45 20 54 72 61 | 63 6b 20 28 76 3a 20 56 |DURE Tra|ck (v: V|
|00000dc0| 69 65 77 3b 20 66 3a 20 | 56 69 65 77 73 2e 46 72 |iew; f: |Views.Fr|
|00000dd0| 61 6d 65 3b 20 78 2c 20 | 79 3a 20 4c 4f 4e 47 49 |ame; x, |y: LONGI|
|00000de0| 4e 54 3b 20 62 75 74 74 | 6f 6e 73 3a 20 53 45 54 |NT; butt|ons: SET|
|00000df0| 29 3b 0d 09 09 56 41 52 | 20 69 2c 20 6a 2c 20 69 |);...VAR| i, j, i|
|00000e00| 31 2c 20 6a 31 3a 20 49 | 4e 54 45 47 45 52 3b 20 |1, j1: I|NTEGER; |
|00000e10| 69 73 44 6f 77 6e 2c 20 | 76 61 6c 69 64 2c 20 73 |isDown, |valid, s|
|00000e20| 65 6c 3a 20 42 4f 4f 4c | 45 41 4e 3b 20 6d 3a 20 |el: BOOL|EAN; m: |
|00000e30| 53 45 54 3b 0d 09 42 45 | 47 49 4e 0d 09 09 4c 6f |SET;..BE|GIN...Lo|
|00000e40| 63 61 74 65 46 69 65 6c | 64 28 76 2c 20 66 2c 20 |cateFiel|d(v, f, |
|00000e50| 78 2c 20 79 2c 20 69 2c | 20 6a 2c 20 73 65 6c 29 |x, y, i,| j, sel)|
|00000e60| 3b 0d 09 09 49 46 20 73 | 65 6c 20 54 48 45 4e 0d |;...IF s|el THEN.|
|00000e70| 09 09 09 53 65 6c 65 63 | 74 46 69 65 6c 64 28 76 |...Selec|tField(v|
|00000e80| 2c 20 66 2c 20 69 2c 20 | 6a 29 3b 0d 09 09 09 52 |, f, i, |j);....R|
|00000e90| 45 50 45 41 54 20 66 2e | 49 6e 70 75 74 28 78 2c |EPEAT f.|Input(x,|
|00000ea0| 20 79 2c 20 6d 2c 20 69 | 73 44 6f 77 6e 29 3b 0d | y, m, i|sDown);.|
|00000eb0| 09 09 09 09 4c 6f 63 61 | 74 65 46 69 65 6c 64 28 |....Loca|teField(|
|00000ec0| 76 2c 20 66 2c 20 78 2c | 20 79 2c 20 69 31 2c 20 |v, f, x,| y, i1, |
|00000ed0| 6a 31 2c 20 76 61 6c 69 | 64 29 3b 20 0d 09 09 09 |j1, vali|d); ....|
|00000ee0| 09 49 46 20 7e 76 61 6c | 69 64 20 4f 52 20 28 69 |.IF ~val|id OR (i|
|00000ef0| 31 20 23 20 69 29 20 4f | 52 20 28 6a 31 20 23 20 |1 # i) O|R (j1 # |
|00000f00| 6a 29 20 54 48 45 4e 0d | 09 09 09 09 09 49 46 20 |j) THEN.|.....IF |
|00000f10| 73 65 6c 20 54 48 45 4e | 20 73 65 6c 20 3a 3d 20 |sel THEN| sel := |
|00000f20| 46 41 4c 53 45 3b 20 53 | 65 6c 65 63 74 46 69 65 |FALSE; S|electFie|
|00000f30| 6c 64 28 76 2c 20 66 2c | 20 69 2c 20 6a 29 20 45 |ld(v, f,| i, j) E|
|00000f40| 4e 44 0d 09 09 09 09 45 | 4c 53 45 0d 09 09 09 09 |ND.....E|LSE.....|
|00000f50| 09 49 46 20 7e 73 65 6c | 20 54 48 45 4e 20 73 65 |.IF ~sel| THEN se|
|00000f60| 6c 20 3a 3d 20 54 52 55 | 45 3b 20 53 65 6c 65 63 |l := TRU|E; Selec|
|00000f70| 74 46 69 65 6c 64 28 76 | 2c 20 66 2c 20 69 2c 20 |tField(v|, f, i, |
|00000f80| 6a 29 20 45 4e 44 0d 09 | 09 09 09 45 4e 44 0d 09 |j) END..|...END..|
|00000f90| 09 09 55 4e 54 49 4c 20 | 7e 69 73 44 6f 77 6e 3b |..UNTIL |~isDown;|
|00000fa0| 0d 09 09 09 49 46 20 73 | 65 6c 20 54 48 45 4e 20 |....IF s|el THEN |
|00000fb0| 48 61 6e 64 6c 65 4b 65 | 79 28 76 2c 20 69 2c 20 |HandleKe|y(v, i, |
|00000fc0| 6a 29 3b 20 53 65 6c 65 | 63 74 46 69 65 6c 64 28 |j); Sele|ctField(|
|00000fd0| 76 2c 20 66 2c 20 69 2c | 20 6a 29 20 45 4e 44 0d |v, f, i,| j) END.|
|00000fe0| 09 09 45 4e 44 0d 09 45 | 4e 44 20 54 72 61 63 6b |..END..E|ND Track|
|00000ff0| 3b 0d 0d 09 50 52 4f 43 | 45 44 55 52 45 20 49 6e |;...PROC|EDURE In|
|00001000| 74 54 6f 53 74 72 69 6e | 67 20 28 78 3a 20 4c 4f |tToStrin|g (x: LO|
|00001010| 4e 47 49 4e 54 3b 20 6d | 69 6e 57 69 64 74 68 3a |NGINT; m|inWidth:|
|00001020| 20 49 4e 54 45 47 45 52 | 3b 20 56 41 52 20 73 3a | INTEGER|; VAR s:|
|00001030| 20 41 52 52 41 59 20 4f | 46 20 43 48 41 52 29 3b | ARRAY O|F CHAR);|
|00001040| 0d 09 09 56 41 52 20 69 | 2c 20 73 69 3a 20 49 4e |...VAR i|, si: IN|
|00001050| 54 45 47 45 52 3b 20 6d | 3a 20 42 4f 4f 4c 45 41 |TEGER; m|: BOOLEA|
|00001060| 4e 3b 20 61 3a 20 41 52 | 52 41 59 20 31 36 20 4f |N; a: AR|RAY 16 O|
|00001070| 46 20 43 48 41 52 3b 20 | 64 69 67 69 74 73 3a 20 |F CHAR; |digits: |
|00001080| 41 52 52 41 59 20 31 37 | 20 4f 46 20 43 48 41 52 |ARRAY 17| OF CHAR|
|00001090| 3b 0d 09 42 45 47 49 4e | 0d 09 09 64 69 67 69 74 |;..BEGIN|...digit|
|000010a0| 73 20 3a 3d 20 22 30 31 | 32 33 34 35 36 37 38 39 |s := "01|23456789|
|000010b0| 22 3b 20 73 69 20 3a 3d | 20 30 3b 20 6d 20 3a 3d |"; si :=| 0; m :=|
|000010c0| 20 78 20 3c 20 30 3b 0d | 09 09 49 46 20 28 78 20 | x < 0;.|..IF (x |
|000010d0| 3d 20 4d 49 4e 28 4c 4f | 4e 47 49 4e 54 29 29 20 |= MIN(LO|NGINT)) |
|000010e0| 54 48 45 4e 0d 09 09 09 | 61 20 3a 3d 20 22 38 34 |THEN....|a := "84|
|000010f0| 36 33 38 34 37 34 31 32 | 22 3b 20 69 20 3a 3d 20 |63847412|"; i := |
|00001100| 31 30 3b 20 44 45 43 28 | 6d 69 6e 57 69 64 74 68 |10; DEC(|minWidth|
|00001110| 29 3b 0d 09 09 45 4c 53 | 45 0d 09 09 09 49 46 20 |);...ELS|E....IF |
|00001120| 6d 20 54 48 45 4e 20 78 | 20 3a 3d 20 2d 78 3b 20 |m THEN x| := -x; |
|00001130| 44 45 43 28 6d 69 6e 57 | 69 64 74 68 29 20 45 4e |DEC(minW|idth) EN|
|00001140| 44 3b 0d 09 09 09 69 20 | 3a 3d 20 30 3b 0d 09 09 |D;....i |:= 0;...|
|00001150| 09 52 45 50 45 41 54 0d | 09 09 09 09 61 5b 69 5d |.REPEAT.|....a[i]|
|00001160| 20 3a 3d 20 64 69 67 69 | 74 73 5b 78 20 4d 4f 44 | := digi|ts[x MOD|
|00001170| 20 31 30 5d 3b 20 78 20 | 3a 3d 20 78 20 44 49 56 | 10]; x |:= x DIV|
|00001180| 20 31 30 3b 20 49 4e 43 | 28 69 29 0d 09 09 09 55 | 10; INC|(i)....U|
|00001190| 4e 54 49 4c 20 28 78 20 | 3d 20 30 29 20 4f 52 20 |NTIL (x |= 0) OR |
|000011a0| 28 78 20 3c 20 30 29 20 | 26 20 28 69 20 3e 3d 20 |(x < 0) |& (i >= |
|000011b0| 6d 69 6e 57 69 64 74 68 | 29 20 4f 52 20 28 69 20 |minWidth|) OR (i |
|000011c0| 3d 20 4c 45 4e 28 61 29 | 29 0d 09 09 45 4e 44 3b |= LEN(a)|)...END;|
|000011d0| 0d 09 09 57 48 49 4c 45 | 20 6d 69 6e 57 69 64 74 |...WHILE| minWidt|
|000011e0| 68 20 3e 20 69 20 44 4f | 0d 09 09 09 49 46 20 73 |h > i DO|....IF s|
|000011f0| 69 20 3c 20 4c 45 4e 28 | 73 29 20 54 48 45 4e 20 |i < LEN(|s) THEN |
|00001200| 73 5b 73 69 5d 20 3a 3d | 20 22 20 22 3b 20 49 4e |s[si] :=| " "; IN|
|00001210| 43 28 73 69 29 20 45 4e | 44 3b 0d 09 09 09 44 45 |C(si) EN|D;....DE|
|00001220| 43 28 6d 69 6e 57 69 64 | 74 68 29 0d 09 09 45 4e |C(minWid|th)...EN|
|00001230| 44 3b 0d 09 09 49 46 20 | 6d 20 26 20 28 73 69 20 |D;...IF |m & (si |
|00001240| 3c 20 4c 45 4e 28 73 29 | 29 20 54 48 45 4e 20 73 |< LEN(s)|) THEN s|
|00001250| 5b 73 69 5d 20 3a 3d 20 | 22 2d 22 3b 20 49 4e 43 |[si] := |"-"; INC|
|00001260| 28 73 69 29 20 45 4e 44 | 3b 0d 09 09 52 45 50 45 |(si) END|;...REPE|
|00001270| 41 54 20 44 45 43 28 69 | 29 3b 20 49 46 20 73 69 |AT DEC(i|); IF si|
|00001280| 20 3c 20 4c 45 4e 28 73 | 29 20 54 48 45 4e 20 73 | < LEN(s|) THEN s|
|00001290| 5b 73 69 5d 20 3a 3d 20 | 61 5b 69 5d 3b 20 49 4e |[si] := |a[i]; IN|
|000012a0| 43 28 73 69 29 3b 20 45 | 4e 44 20 55 4e 54 49 4c |C(si); E|ND UNTIL|
|000012b0| 20 69 20 3d 20 30 3b 0d | 09 09 49 46 20 73 69 20 | i = 0;.|..IF si |
|000012c0| 3c 20 4c 45 4e 28 73 29 | 20 54 48 45 4e 20 73 5b |< LEN(s)| THEN s[|
|000012d0| 73 69 5d 20 3a 3d 20 30 | 58 3b 20 45 4c 53 45 20 |si] := 0|X; ELSE |
|000012e0| 73 5b 4c 45 4e 28 73 29 | 2d 31 5d 20 3a 3d 20 30 |s[LEN(s)|-1] := 0|
|000012f0| 58 20 45 4e 44 0d 09 45 | 4e 44 20 49 6e 74 54 6f |X END..E|ND IntTo|
|00001300| 53 74 72 69 6e 67 3b 0d | 0d 09 50 52 4f 43 45 44 |String;.|..PROCED|
|00001310| 55 52 45 20 49 6e 69 74 | 20 28 76 3a 20 56 69 65 |URE Init| (v: Vie|
|00001320| 77 29 3b 0d 09 42 45 47 | 49 4e 0d 09 09 4e 45 57 |w);..BEG|IN...NEW|
|00001330| 28 76 2e 73 74 61 63 6b | 29 3b 20 76 2e 73 74 61 |(v.stack|); v.sta|
|00001340| 63 6b 2e 76 61 6c 20 3a | 3d 20 30 3b 20 76 2e 65 |ck.val :|= 0; v.e|
|00001350| 64 69 74 4d 6f 64 65 20 | 3a 3d 20 54 52 55 45 3b |ditMode |:= TRUE;|
|00001360| 20 76 2e 65 6e 74 65 72 | 4d 6f 64 65 20 3a 3d 20 | v.enter|Mode := |
|00001370| 46 41 4c 53 45 0d 09 45 | 4e 44 20 49 6e 69 74 3b |FALSE..E|ND Init;|
|00001380| 0d 0d 09 28 2a 20 56 69 | 65 77 20 2a 29 0d 0d 09 |...(* Vi|ew *)...|
|00001390| 50 52 4f 43 45 44 55 52 | 45 20 28 76 3a 20 56 69 |PROCEDUR|E (v: Vi|
|000013a0| 65 77 29 20 43 6f 70 79 | 46 72 6f 6d 20 28 73 6f |ew) Copy|From (so|
|000013b0| 75 72 63 65 3a 20 56 69 | 65 77 73 2e 56 69 65 77 |urce: Vi|ews.View|
|000013c0| 29 3b 0d 09 42 45 47 49 | 4e 0d 09 09 49 6e 69 74 |);..BEGI|N...Init|
|000013d0| 28 76 29 0d 09 45 4e 44 | 20 43 6f 70 79 46 72 6f |(v)..END| CopyFro|
|000013e0| 6d 3b 0d 0d 09 50 52 4f | 43 45 44 55 52 45 20 28 |m;...PRO|CEDURE (|
|000013f0| 76 3a 20 56 69 65 77 29 | 20 52 65 73 74 6f 72 65 |v: View)| Restore|
|00001400| 20 28 66 3a 20 56 69 65 | 77 73 2e 46 72 61 6d 65 | (f: Vie|ws.Frame|
|00001410| 3b 20 6c 2c 20 74 2c 20 | 72 2c 20 62 3a 20 4c 4f |; l, t, |r, b: LO|
|00001420| 4e 47 49 4e 54 29 3b 0d | 09 09 56 41 52 20 69 2c |NGINT);.|..VAR i,|
|00001430| 20 6a 3a 20 49 4e 54 45 | 47 45 52 3b 20 78 2c 20 | j: INTE|GER; x, |
|00001440| 79 3a 20 4c 4f 4e 47 49 | 4e 54 3b 20 73 3a 20 41 |y: LONGI|NT; s: A|
|00001450| 52 52 41 59 20 32 20 4f | 46 20 43 48 41 52 3b 0d |RRAY 2 O|F CHAR;.|
|00001460| 09 09 09 64 69 73 70 6c | 61 79 3a 20 41 52 52 41 |...displ|ay: ARRA|
|00001470| 59 20 31 32 20 4f 46 20 | 43 48 41 52 3b 0d 09 42 |Y 12 OF |CHAR;..B|
|00001480| 45 47 49 4e 0d 09 09 49 | 6e 74 54 6f 53 74 72 69 |EGIN...I|ntToStri|
|00001490| 6e 67 28 76 2e 73 74 61 | 63 6b 2e 76 61 6c 2c 20 |ng(v.sta|ck.val, |
|000014a0| 31 31 2c 20 64 69 73 70 | 6c 61 79 29 3b 0d 09 09 |11, disp|lay);...|
|000014b0| 66 2e 44 72 61 77 52 65 | 63 74 28 30 2c 20 30 2c |f.DrawRe|ct(0, 0,|
|000014c0| 20 34 30 2a 6d 6d 2c 20 | 35 38 2a 6d 6d 2c 20 30 | 40*mm, |58*mm, 0|
|000014d0| 2c 20 50 6f 72 74 73 2e | 62 6c 61 63 6b 29 3b 0d |, Ports.|black);.|
|000014e0| 09 09 66 2e 44 72 61 77 | 52 65 63 74 28 33 2a 6d |..f.Draw|Rect(3*m|
|000014f0| 6d 2c 20 33 2a 6d 6d 2c | 20 33 37 2a 6d 6d 2c 20 |m, 3*mm,| 37*mm, |
|00001500| 31 30 2a 6d 6d 2c 20 30 | 2c 20 50 6f 72 74 73 2e |10*mm, 0|, Ports.|
|00001510| 62 6c 61 63 6b 29 3b 0d | 09 09 66 2e 44 72 61 77 |black);.|..f.Draw|
|00001520| 53 74 72 69 6e 67 28 36 | 2a 6d 6d 2c 20 38 2a 6d |String(6|*mm, 8*m|
|00001530| 6d 2c 20 50 6f 72 74 73 | 2e 62 6c 61 63 6b 2c 20 |m, Ports|.black, |
|00001540| 64 69 73 70 6c 61 79 2c | 20 66 6f 6e 74 29 3b 0d |display,| font);.|
|00001550| 09 09 6a 20 3a 3d 20 30 | 3b 0d 09 09 57 48 49 4c |..j := 0|;...WHIL|
|00001560| 45 20 6a 20 3c 20 35 20 | 44 4f 0d 09 09 09 69 20 |E j < 5 |DO....i |
|00001570| 3a 3d 20 30 3b 20 79 20 | 3a 3d 20 28 31 32 20 2b |:= 0; y |:= (12 +|
|00001580| 20 6a 2a 39 29 2a 6d 6d | 3b 0d 09 09 09 57 48 49 | j*9)*mm|;....WHI|
|00001590| 4c 45 20 69 20 3c 20 34 | 20 44 4f 0d 09 09 09 09 |LE i < 4| DO.....|
|000015a0| 78 20 3a 3d 20 28 33 20 | 2b 20 69 2a 39 29 2a 6d |x := (3 |+ i*9)*m|
|000015b0| 6d 3b 0d 09 09 09 09 66 | 2e 44 72 61 77 52 65 63 |m;.....f|.DrawRec|
|000015c0| 74 28 78 2c 20 79 2c 20 | 78 2b 36 2a 6d 6d 2c 20 |t(x, y, |x+6*mm, |
|000015d0| 79 2b 36 2a 6d 6d 2c 20 | 30 2c 20 50 6f 72 74 73 |y+6*mm, |0, Ports|
|000015e0| 2e 62 6c 61 63 6b 29 3b | 0d 09 09 09 09 66 2e 44 |.black);|.....f.D|
|000015f0| 72 61 77 52 65 63 74 28 | 78 2b 6d 6d 2c 20 79 2b |rawRect(|x+mm, y+|
|00001600| 36 2a 6d 6d 2c 20 78 2b | 37 2a 6d 6d 2c 20 79 2b |6*mm, x+|7*mm, y+|
|00001610| 37 2a 6d 6d 2c 20 50 6f | 72 74 73 2e 66 69 6c 6c |7*mm, Po|rts.fill|
|00001620| 2c 20 50 6f 72 74 73 2e | 62 6c 61 63 6b 29 3b 0d |, Ports.|black);.|
|00001630| 09 09 09 09 66 2e 44 72 | 61 77 52 65 63 74 28 78 |....f.Dr|awRect(x|
|00001640| 2b 36 2a 6d 6d 2c 20 79 | 2b 50 6f 72 74 73 2e 6d |+6*mm, y|+Ports.m|
|00001650| 6d 2c 20 78 2b 37 2a 6d | 6d 2c 20 79 2b 37 2a 6d |m, x+7*m|m, y+7*m|
|00001660| 6d 2c 20 50 6f 72 74 73 | 2e 66 69 6c 6c 2c 20 50 |m, Ports|.fill, P|
|00001670| 6f 72 74 73 2e 62 6c 61 | 63 6b 29 3b 0d 09 09 09 |orts.bla|ck);....|
|00001680| 09 73 5b 30 5d 20 3a 3d | 20 6c 61 62 65 6c 73 5b |.s[0] :=| labels[|
|00001690| 6a 2a 34 2b 69 5d 3b 20 | 73 5b 31 5d 20 3a 3d 20 |j*4+i]; |s[1] := |
|000016a0| 30 58 3b 0d 09 09 09 09 | 66 2e 44 72 61 77 53 74 |0X;.....|f.DrawSt|
|000016b0| 72 69 6e 67 28 78 20 2b | 20 33 2a 6d 6d 20 2d 20 |ring(x +| 3*mm - |
|000016c0| 66 6f 6e 74 2e 77 20 44 | 49 56 20 32 2c 20 79 2b |font.w D|IV 2, y+|
|000016d0| 33 2a 6d 6d 20 2b 20 66 | 6f 6e 74 2e 61 73 63 20 |3*mm + f|ont.asc |
|000016e0| 44 49 56 20 32 2c 20 50 | 6f 72 74 73 2e 62 6c 61 |DIV 2, P|orts.bla|
|000016f0| 63 6b 2c 20 73 2c 20 66 | 6f 6e 74 29 3b 0d 09 09 |ck, s, f|ont);...|
|00001700| 09 09 49 4e 43 28 69 29 | 0d 09 09 09 45 4e 44 3b |..INC(i)|....END;|
|00001710| 0d 09 09 09 49 4e 43 28 | 6a 29 0d 09 09 45 4e 44 |....INC(|j)...END|
|00001720| 0d 09 45 4e 44 20 52 65 | 73 74 6f 72 65 3b 0d 0d |..END Re|store;..|
|00001730| 09 50 52 4f 43 45 44 55 | 52 45 20 28 76 3a 20 56 |.PROCEDU|RE (v: V|
|00001740| 69 65 77 29 20 48 61 6e | 64 6c 65 43 74 72 6c 4d |iew) Han|dleCtrlM|
|00001750| 73 67 20 28 66 3a 20 56 | 69 65 77 73 2e 46 72 61 |sg (f: V|iews.Fra|
|00001760| 6d 65 3b 20 56 41 52 20 | 6d 73 67 3a 20 43 6f 6e |me; VAR |msg: Con|
|00001770| 74 72 6f 6c 6c 65 72 73 | 2e 4d 65 73 73 61 67 65 |trollers|.Message|
|00001780| 3b 0d 09 09 09 09 09 09 | 09 09 09 09 09 09 09 09 |;.......|........|
|00001790| 09 09 09 09 09 09 09 56 | 41 52 20 66 6f 63 75 73 |.......V|AR focus|
|000017a0| 3a 20 56 69 65 77 73 2e | 56 69 65 77 29 3b 0d 09 |: Views.|View);..|
|000017b0| 09 56 41 52 20 69 2c 20 | 6a 2c 20 6b 3a 20 49 4e |.VAR i, |j, k: IN|
|000017c0| 54 45 47 45 52 3b 0d 09 | 42 45 47 49 4e 0d 09 09 |TEGER;..|BEGIN...|
|000017d0| 57 49 54 48 20 6d 73 67 | 3a 20 43 6f 6e 74 72 6f |WITH msg|: Contro|
|000017e0| 6c 6c 65 72 73 2e 54 72 | 61 63 6b 4d 73 67 20 44 |llers.Tr|ackMsg D|
|000017f0| 4f 0d 09 09 09 54 72 61 | 63 6b 28 76 2c 20 66 2c |O....Tra|ck(v, f,|
|00001800| 20 6d 73 67 2e 78 2c 20 | 6d 73 67 2e 79 2c 20 6d | msg.x, |msg.y, m|
|00001810| 73 67 2e 6d 6f 64 69 66 | 69 65 72 73 29 0d 09 09 |sg.modif|iers)...|
|00001820| 7c 20 6d 73 67 3a 20 43 | 6f 6e 74 72 6f 6c 6c 65 || msg: C|ontrolle|
|00001830| 72 73 2e 45 64 69 74 4d | 73 67 20 44 4f 0d 09 09 |rs.EditM|sg DO...|
|00001840| 09 49 46 20 6d 73 67 2e | 63 68 61 72 20 3d 20 43 |.IF msg.|char = C|
|00001850| 52 20 54 48 45 4e 20 6b | 20 3a 3d 20 31 39 0d 09 |R THEN k| := 19..|
|00001860| 09 09 45 4c 53 49 46 20 | 6d 73 67 2e 63 68 61 72 |..ELSIF |msg.char|
|00001870| 20 3d 20 30 38 58 20 54 | 48 45 4e 20 6b 20 3a 3d | = 08X T|HEN k :=|
|00001880| 20 31 36 0d 09 09 09 45 | 4c 53 45 20 6b 20 3a 3d | 16....E|LSE k :=|
|00001890| 20 30 3b 0d 09 09 09 09 | 57 48 49 4c 45 20 28 6b | 0;.....|WHILE (k|
|000018a0| 20 3c 20 32 30 29 20 26 | 20 28 43 41 50 28 6c 61 | < 20) &| (CAP(la|
|000018b0| 62 65 6c 73 5b 6b 5d 29 | 20 23 20 43 41 50 28 6d |bels[k])| # CAP(m|
|000018c0| 73 67 2e 63 68 61 72 29 | 29 20 44 4f 20 49 4e 43 |sg.char)|) DO INC|
|000018d0| 28 6b 29 20 45 4e 44 0d | 09 09 09 45 4e 44 3b 0d |(k) END.|...END;.|
|000018e0| 09 09 09 49 46 20 6b 20 | 3c 20 32 30 20 54 48 45 |...IF k |< 20 THE|
|000018f0| 4e 20 69 20 3a 3d 20 6b | 20 4d 4f 44 20 34 3b 20 |N i := k| MOD 4; |
|00001900| 6a 20 3a 3d 20 6b 20 44 | 49 56 20 34 3b 0d 09 09 |j := k D|IV 4;...|
|00001910| 09 09 53 65 6c 65 63 74 | 46 69 65 6c 64 28 76 2c |..Select|Field(v,|
|00001920| 20 66 2c 20 69 2c 20 6a | 29 3b 20 48 61 6e 64 6c | f, i, j|); Handl|
|00001930| 65 4b 65 79 28 76 2c 20 | 69 2c 20 6a 29 3b 20 53 |eKey(v, |i, j); S|
|00001940| 65 6c 65 63 74 46 69 65 | 6c 64 28 76 2c 20 66 2c |electFie|ld(v, f,|
|00001950| 20 69 2c 20 6a 29 3b 20 | 0d 09 09 09 45 4e 44 0d | i, j); |....END.|
|00001960| 09 09 45 4c 53 45 0d 09 | 09 45 4e 44 0d 09 45 4e |..ELSE..|.END..EN|
|00001970| 44 20 48 61 6e 64 6c 65 | 43 74 72 6c 4d 73 67 3b |D Handle|CtrlMsg;|
|00001980| 0d 0d 09 50 52 4f 43 45 | 44 55 52 45 20 28 76 3a |...PROCE|DURE (v:|
|00001990| 20 56 69 65 77 29 20 48 | 61 6e 64 6c 65 50 72 6f | View) H|andlePro|
|000019a0| 70 4d 73 67 20 28 56 41 | 52 20 6d 73 67 3a 20 50 |pMsg (VA|R msg: P|
|000019b0| 72 6f 70 65 72 74 69 65 | 73 2e 4d 65 73 73 61 67 |ropertie|s.Messag|
|000019c0| 65 29 3b 0d 09 42 45 47 | 49 4e 0d 09 09 57 49 54 |e);..BEG|IN...WIT|
|000019d0| 48 20 6d 73 67 3a 20 50 | 72 6f 70 65 72 74 69 65 |H msg: P|ropertie|
|000019e0| 73 2e 52 65 73 69 7a 65 | 50 72 65 66 20 44 4f 0d |s.Resize|Pref DO.|
|000019f0| 09 09 09 6d 73 67 2e 66 | 69 78 65 64 20 3a 3d 20 |...msg.f|ixed := |
|00001a00| 54 52 55 45 0d 09 09 7c | 20 6d 73 67 3a 20 50 72 |TRUE...|| msg: Pr|
|00001a10| 6f 70 65 72 74 69 65 73 | 2e 53 69 7a 65 50 72 65 |operties|.SizePre|
|00001a20| 66 20 44 4f 0d 09 09 09 | 6d 73 67 2e 77 20 3a 3d |f DO....|msg.w :=|
|00001a30| 20 34 30 20 2a 20 6d 6d | 3b 20 6d 73 67 2e 68 20 | 40 * mm|; msg.h |
|00001a40| 3a 3d 20 35 38 20 2a 20 | 6d 6d 0d 09 09 7c 20 6d |:= 58 * |mm...| m|
|00001a50| 73 67 3a 20 50 72 6f 70 | 65 72 74 69 65 73 2e 46 |sg: Prop|erties.F|
|00001a60| 6f 63 75 73 50 72 65 66 | 20 44 4f 0d 09 09 09 6d |ocusPref| DO....m|
|00001a70| 73 67 2e 73 65 74 46 6f | 63 75 73 20 3a 3d 20 54 |sg.setFo|cus := T|
|00001a80| 52 55 45 0d 09 09 45 4c | 53 45 0d 09 09 45 4e 44 |RUE...EL|SE...END|
|00001a90| 0d 09 45 4e 44 20 48 61 | 6e 64 6c 65 50 72 6f 70 |..END Ha|ndleProp|
|00001aa0| 4d 73 67 3b 0d 0d 09 28 | 2a 20 63 6f 6d 6d 61 6e |Msg;...(|* comman|
|00001ab0| 64 73 20 2a 29 0d 0d 09 | 50 52 4f 43 45 44 55 52 |ds *)...|PROCEDUR|
|00001ac0| 45 20 44 65 70 6f 73 69 | 74 2a 3b 0d 09 09 56 41 |E Deposi|t*;...VA|
|00001ad0| 52 20 76 3a 20 56 69 65 | 77 3b 0d 09 42 45 47 49 |R v: Vie|w;..BEGI|
|00001ae0| 4e 0d 09 09 4e 45 57 28 | 76 29 3b 20 49 6e 69 74 |N...NEW(|v); Init|
|00001af0| 28 76 29 3b 20 56 69 65 | 77 73 2e 44 65 70 6f 73 |(v); Vie|ws.Depos|
|00001b00| 69 74 28 76 29 0d 09 45 | 4e 44 20 44 65 70 6f 73 |it(v)..E|ND Depos|
|00001b10| 69 74 3b 0d 0d 42 45 47 | 49 4e 20 0d 09 66 6f 6e |it;..BEG|IN ..fon|
|00001b20| 74 20 3a 3d 20 46 6f 6e | 74 73 2e 64 69 72 2e 54 |t := Fon|ts.dir.T|
|00001b30| 68 69 73 28 22 43 6f 75 | 72 69 65 72 22 2c 20 31 |his("Cou|rier", 1|
|00001b40| 31 20 2a 20 46 6f 6e 74 | 73 2e 70 6f 69 6e 74 2c |1 * Font|s.point,|
|00001b50| 20 7b 7d 2c 20 46 6f 6e | 74 73 2e 6e 6f 72 6d 61 | {}, Fon|ts.norma|
|00001b60| 6c 29 3b 0d 09 6c 61 62 | 65 6c 73 20 3a 3d 20 22 |l);..lab|els := "|
|00001b70| 73 70 f7 2f 37 38 39 2a | 34 35 36 2d 31 32 33 2b |sp./789*|456-123+|
|00001b80| 43 30 b1 5e 22 0d 45 4e | 44 20 20 4f 62 78 43 61 |C0.^".EN|D ObxCa|
|00001b90| 6c 63 2e 82 f1 54 65 78 | 74 43 6f 6e 74 72 6f 6c |lc...Tex|tControl|
|00001ba0| 6c 65 72 73 2e 53 74 64 | 43 74 72 6c 44 65 73 63 |lers.Std|CtrlDesc|
|00001bb0| 00 f1 54 65 78 74 43 6f | 6e 74 72 6f 6c 6c 65 72 |..TextCo|ntroller|
|00001bc0| 73 2e 43 6f 6e 74 72 6f | 6c 6c 65 72 44 65 73 63 |s.Contro|llerDesc|
|00001bd0| 00 f1 43 6f 6e 74 61 69 | 6e 65 72 73 2e 43 6f 6e |..Contai|ners.Con|
|00001be0| 74 72 6f 6c 6c 65 72 44 | 65 73 63 00 f1 43 6f 6e |trollerD|esc..Con|
|00001bf0| 74 72 6f 6c 6c 65 72 73 | 2e 43 6f 6e 74 72 6f 6c |trollers|.Control|
|00001c00| 6c 65 72 44 65 73 63 00 | f2 04 00 00 00 00 00 00 |lerDesc.|........|
|00001c10| 00 14 00 00 00 00 00 00 | 00 09 00 00 00 00 00 00 |........|........|
|00001c20| 00 00 00 00 00 00 00 00 | 01 82 f1 54 65 78 74 52 |........|...TextR|
|00001c30| 75 6c 65 72 73 2e 53 74 | 64 52 75 6c 65 72 44 65 |ulers.St|dRulerDe|
|00001c40| 73 63 00 f1 54 65 78 74 | 52 75 6c 65 72 73 2e 52 |sc..Text|Rulers.R|
|00001c50| 75 6c 65 72 44 65 73 63 | 00 f2 03 00 00 00 00 00 |ulerDesc|........|
|00001c60| 00 00 ab 00 00 00 07 00 | 00 00 a3 00 00 00 00 00 |........|........|
|00001c70| 00 83 f1 54 65 78 74 52 | 75 6c 65 72 73 2e 53 74 |...TextR|ulers.St|
|00001c80| 64 53 74 79 6c 65 44 65 | 73 63 00 f1 54 65 78 74 |dStyleDe|sc..Text|
|00001c90| 52 75 6c 65 72 73 2e 53 | 74 79 6c 65 44 65 73 63 |Rulers.S|tyleDesc|
|00001ca0| 00 f2 07 00 00 00 00 00 | 00 00 00 00 00 00 08 00 |........|........|
|00001cb0| 00 00 5a 00 00 00 00 00 | 00 00 82 f1 54 65 78 74 |..Z.....|....Text|
|00001cc0| 52 75 6c 65 72 73 2e 41 | 74 74 72 69 62 75 74 65 |Rulers.A|ttribute|
|00001cd0| 73 44 65 73 63 00 f2 04 | 00 00 00 00 00 00 00 00 |sDesc...|........|
|00001ce0| 00 00 00 00 00 00 00 24 | 00 00 00 00 01 00 00 00 |.......$|........|
|00001cf0| 00 00 00 00 00 20 a3 5a | 00 00 00 00 00 7c be 01 |..... .Z|.....|..|
|00001d00| 00 38 63 00 00 01 00 00 | 00 01 00 00 00 00 00 00 |.8c.....|........|
|00001d10| 00 82 f2 0d 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d20| 00 00 00 22 00 00 00 00 | 00 00 00 00 01 00 00 00 |..."....|........|
|00001d30| 00 48 65 6c 76 65 74 69 | 63 61 00 7c be 01 00 00 |.Helveti|ca.|....|
|00001d40| 00 00 00 90 01 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d50| 00 e0 8c 01 00 e0 8c 01 | 00 00 30 5c 00 e0 b9 3b |........|..0\...;|
|00001d60| 3e 82 f1 44 6f 63 75 6d | 65 6e 74 73 2e 43 6f 6e |>..Docum|ents.Con|
|00001d70| 74 72 6f 6c 6c 65 72 44 | 65 73 63 00 f2 10 00 00 |trollerD|esc.....|
|00001d80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 08 00 00 |........|........|
|00001d90| 00 00 00 00 00 00 09 00 | 00 00 00 f8 1b 73 00 7c |........|.....s.||
|00001da0| f9 a2 00 80 fc 0a 00 80 | fc 0a 00 a0 9f 65 00 fc |........|.....e..|
|00001db0| fc 97 00 00 | |.... | |
+--------+-------------------------+-------------------------+--------+--------+